|||||}}}}}}}}~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}|}}||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}|||||||||_|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||}||||||}||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}}}}}}|||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||_|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|}|||}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||~}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}|||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||_||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}|}||}}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||||||~}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}|}}}|||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}||||{{_||||}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||||}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||{{{_||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}|||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||{{{{_|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}|||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||{{{{_|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||{{{_|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}|}||}}}}}}}}}}||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}||||{{_||||}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}}}}}||||||||||||||||||||}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||{_|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|}||}}}}}}}}}}|||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||_|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}|||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}|||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||_||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||}||||||||}}||||}|||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}|||||||||_||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||}||||||||}}}}||}|||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||_||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||}|||||||||||}}}}||||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}|||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||_||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||}|||||||||||}}}|||||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||_||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||}||||||||||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}|||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}|||||||||_||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||}||||||||}}|||||}||||||||||||||||}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}||||}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||_|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}||||}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||_|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||}|||}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}||}}}}}|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|}}}}||||_||||}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}|||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||_||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}||||}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||_|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}||||}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}||||||||_||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}||||}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}||||||||_||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}||||}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}||||_|||||||}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}||}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}||||_||||}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}|||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||_||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}||||}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||_||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||}|||}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}||||}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||_|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||}}}}}||||}}}|||||}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}|||||||||||{{_|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||}}}|||||}||||||||||||||||}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||{{{|||||||||||||||||||||||||||||||||||||||}}}}}}}|||||}||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||||||||||||{{_|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||}}}}||||||||||||{{|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}||||||||||{||||||||||||||||||||||||||||||||||||||||||||}}||}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||}|||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}||||||||||||||||}||}}}}}}}}|||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}~~||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||{|||||||||||||||||||||||||}}|||||||||||||}|}}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}|||}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||{|||||||||||||||||||||||||}}|||||||||||||}|}}}}}}}}}}|||||||||||||||||||||}}}}}}|||||||||||}||||||||||||||}}}}}}}|||}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||{{||||||_|||||||||||||||||}}}}|||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}|||}}}}}}}}}}}||||||||||||}}}}}}}|||}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||{{|||||||_|||||||||||||||||}}}||||||||||||||||}}}}}}}|||||||||||||||||||||}}}}}}}}||}}}}}}}}}}}}|||||||||||}}}}}}||||}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||||{{||||||_||||||||||||||||}}||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}||}}}}}}}}}}}}|||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||{{||||||_|||||||||||||||}}|||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}||}}}}}}}}}}}}|||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||{{||||||_||||||||||||||}}|||||||||||||||||}}}}}}|||||||||||||||||||}}}}}}}}}}||||||||}}}}}}||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||{{||||||_||||||||||||}}}||||||||||||||||}}}|||||||||||||||||||||}}}}}}}}}}}||||||||||}}||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||{{||||||_||||||||||||}}|||||||||||||||||}}}||||}||||||||||}|||}}}}}}}}}}}}}|||||||||||}||||||||||||||}}}}}}|||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||{{||||||_||||||||||||}}|||||||||||||||||}}}||||}||||||||||}|||}}}}}}}}}}}}}|||||||||||}||||||||||||||}}}}}}||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||{||||||_|||||||||}}}}|||||||||||||||||}}}|||||||||||||||||||||}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||{{||||||_||||||||||||}}|||||||||||||||||}}}}}}|||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||{{||||||_|||||||||||}}|||||||||||||||||}}}}}}}|||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~|||||||||||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||{{||||||_|||||||||||}}|||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||{{{{{||||||_||||||||||||}}|||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||{{{{{{||||||_||||||||||}}}}|||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||{{{{||||||_||||||||||}}}}|||||||||||||||}}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||{||||||_||||||||||}|}}|||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||{||||||_|||||||||}|}}|||||||||||||}|}}}}}}}}}}|||||||||||||||||||||}}}}}}~||||||||||||||||||||||||||}}}}}}|||||||||||||}|}}||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||{{||||||_||||||||||}}|||||||||||||||}}}}}}}}}}|||||||||||||||||||||}}}}}}~||||||||||||||||||||||||||}}}}}}||||||||||||||}|}}||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||{{||||||_||||||}}}|||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||}}}}}}||||||||||||||}|}}||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||{{||||||_||||}}|||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||}}}}}}||||||||||||||}|}}||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||{{|||||||_|}}}|||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||||||}|}}||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||{||||||_}}|||||||||||||}}}}}}}}}}}}|||||||||||||||||||||}}}}}}~||||||||||||||||||||||||||}}}}}}||||||||||||}|}}}}}}}}}}||||||||||||||||||}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||}|||||||||||||||}}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||}}}}}}||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||}|||||||||||||||}}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||}}|}}}||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||}}}|}||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||{||||||||||||||||||||||}}}}}}}||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||{{|||||||||||||||||}}}}}}}}|||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~~~~~}}}}}}}||||||||||}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||{{|||||||||||||||}}}}}}}}}|||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||{{{|||||||||||||}}}}}}}}}}||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||}}}}}}}}}~~||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||{{_|||||||||||||}}}}}}}}}}|||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||||||}|||||||||||||||||||||}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||}}}}}}}}}~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||||_|||||||||||}}}}}}}}}}||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||}}}|}||||||||||||||||||||||}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||}}}}}}}}~~~~|||||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||||_|||||||||||}}}}}}}}}}||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||}}}|}||||||||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}||||||||||}}}}}}}}~~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||_|||||||||||||}}}}}}}}}||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||}}|}}}}}|||||||||||||||||||}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}||||||||||}}}}}}}}~~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||_||||||||||||}}}}}}}}}||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~}}}|||||||||||}}}}}}}}~~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||_|||||||||||}}}}}}}}}||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~}}|||||||||||}}}}}}}}~~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||_|||||||||||}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||}}}}}}}}~~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||_||||||||||}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||}}}}}}}}~~~~|||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||_|||||||||||}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}||||||||||||}}}|||||||||||||||||||||}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||}}}}}}}}~~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||_||||||||||}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}||||||||||||||||||}}}}}}}}}}}~~}}}}}}}~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||}}}}}}}}~~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||_||||||||||}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}|||||||||||||||||}}}}}}}}}}}~~~}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||||}}}}}}}}}~~~|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||_|||||||||}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}|||||||||}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||||}}}}}}}}}~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||_|||||||||}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||||}}}}}}}}}~~~|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||_|||||||||}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||||}}}}}}}}}~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||_|||||||||}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||||}}}}}}}}}~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||_|||||||||}}}}}}}}}}||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||||}}}}}}}}}~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||_|||||||||}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}|||||||||}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||}}}}}}}}}~~~_||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||_|||||||||}}}}}}}}}|||||||||||||||||||}}}}}|||||||||||}||||||||||||||}}}}}}|||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}}}_}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||}}}}}}}}}~~~_||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||_||||||||||}}}}}}}}|||||||||||||||||||}}}}}|||||||||||}||||||||||||||}}}}}}|||||||||}}}}}}}}||||||||||||||||||||}}}}}}}}}_}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||}}}}}}}}~~~~_||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||_|||||||||||||}}}}}|||||||||||||||||||||}}}}}||||||}||||}||||||||||||||}}}}}}||||||||||||}}}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~~~||||||||||}}}}}}}}}~~~_|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||_||||||||||||||||||||||||||||||||||||}}}}}||||||}}}}}}}}||||||||||||}}}}}}|||||||||||||}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~}}||||||||||}}}}}}}}}~~~_|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||_||||||||||||||||||||||||||||||||||||}}}}}||||}}}}}}}}}}}|||||||||||}}}}}}|||||||||||||}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~~}}}||||||||||}}}}}}}}}~~~_|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||_|||||||||||||||||||||||||||||||||||||}}}}}||||}}}}}}}}}}}|||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}|||||||||||}}}}}}}}~~~_||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||_|||||||||||||||||||||||||||||||||}}}}}||||}}}}}}}}}}}|||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}||||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}||||||||||}}}}}}}}~~~~_|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||_||||||||||||||||||||||||||||||||||}}}}}||||}}}}}}}}}}||||||||||||}}}}}}||||}}||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||}}}}}}}}}~~~_||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||_||||||||||||||||||||||||||||}}}}}|||||||||||}||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||}}}}}}}}}~~~_||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||_||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}|||||||||||}}}}}}}}}~~_|||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||_|||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}}||||||||||}}}}}}}}}}~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||_||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}|||||||||||}}}}}}}}}}~~~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||__|||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}~~~|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||__|||||||||||||||||||||||}}}}}}}||||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}||||}}}}}}}}}}}~~~|||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}~~~~|_|||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}~}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}~~|||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~~}}}||||_||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||||}}}}}}}}}}}_}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~~}}}||||||||_|||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||||}}}}}}}}}}}_}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~~}}}}|||||||||||_||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||}}}}}}}}}}}_}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__||||||||||{{|||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||}}}}}}}}}}}_}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{{{|||||||||||__||||||||||{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||}}}}}}}}}}}_}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{{||||||||||__||||||||||{{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||}}}}|||}}}}}}}}}}}_}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{{||||||||||__||||||||||{{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~||||||||||||||||||||}}}}}}}}||||||}}}}}}}}}}}_}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}}|||||||||__||||||||||{{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~|||||||||||||||||||||}}}}}}}}}||||||}}}}}}}}}}}_}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}}||||||||||||__||||||||||{{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||~}}}}}}}}}}}|||||}}}}}}}}}}}_}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||~}}}}}}}}}}}|||||}}}}}}}}}}}_}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__|||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||~}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__|||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||||~~}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~||||||||||||||||||||||||~}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~|||||||||||||||||||||||||~}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}~}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~|||||||||||||||||||||||||||~}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~||||||||||||||||||||||||||||~}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{|||||||||__||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||||||~}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}|}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~__}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||||~}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||__||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||||~}}}}}}}}}}||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~~~~~~~~~~~}}}}||{||||||||||||_||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||||~}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}}||{||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||||~}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}}||||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||||~}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}}||||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||||||~}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~}}}}}||||||||||||__|||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~__}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||||||~}}}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~~~~~~~~~~~}}}}}||||||||||||||__|||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||~}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~~}}}}||||||||||||_|||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||~}}}}}}}}}}}||||}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~~~~~}}}||||||||||_||||||||||{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}|}}||||||||||||||||||||||||||||||}}}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||}}}}}}}}}}}||||||||}}}}}}}}}}}}}||||||||||||}}}}}}}}}}||||||||||||||}}}}}}}}~~~~~~~~~~~~~~~~}}}|||||||||||||||||||{{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}||}}|||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||~}}}}}}}}}}}}||||||||||}}}}}}}}||||||||||||}}}}}}}}}}}}}|||||||}}}}}}}~~~~~~~~~||||||||||||||||||{{{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~|||||||||||||||||||||||||||||~}}}}}}}}}}}}}||||||||||||||}}}||||||||||||}}}}}}}}}}}}}}}||}}|||{||||||||||{{{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~|||||||||||||||||||||||||||||~}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}|}}||{{{{||||||||||{{{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_|||||||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||{{{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~_|||||||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}||8||||||||||{{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}||89|||||||||||{{||||||||||||}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}||789|||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|}}}|||||}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}|789||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||||||||}}}}}}}}}}}}|}}}}}}}}||||||||||}}|||||||||||||||||||||||||||||||||}}}}}}}}}}}}|6789|||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||||||}}}}}}}}}|||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|789||||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_|||||||||||||||||||||||}}}}}|||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}|789||||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||||789|||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~||||||||||||||||||||||||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||89||||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~||||||||||||||||||||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||789|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~||||||||||||||||||||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||789|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~|||||||||||||||||||||||||||||||||||}}||||||||||||||||||||||||||||||||||||||||||||78|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~|||||||||||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||78|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~|||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}|78|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|78|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~|||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}|78|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~|||||||||||||||||||||||||||||||||}}}}}}}}}}|||}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}|78|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}||789|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}||789|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||}}||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}||89|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||}}}||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}||789||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||789|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||789|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}||}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||}}}}}}|||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}|}}}}}||6789|||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}|}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||}}}}}}|||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}|}}}}}}||789|{{{{{||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||~}}}}}}}||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}||}}}}}}||789{{{{{{{||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_||||||||||||||||||||~}}}}}}}||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}|}}}}}}||89{{{{{{{{||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}|}}}}}}}}|8{{{{{{{{{{|||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~||||||||||||||||||||~}}}}}}}||||||||||||||||||||}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}|}}}}}}}}}||{{{{{{{{{{{|||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||}}}}}}}}}}|}|||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}~~~||||||||||||||||||||~}}}}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}||}}}}}}}}}}|||||{{{{{{{{||||||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}~~~||||||||||||||||||||~}}}}}}|||||||||||||||||||||}}}}}}}}}|||||||||||||||}}}||||||||||||}}}}}}}}}}}}}}}|||}}}}}}}}}}}}||||||{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}||||}}}}}}}}}}}}}~~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||}}|}|||||||||||||||||}}}}}}}}|||||||||||||}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}||||||||||||||||||}}}}}}}}}}}~~~||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}|||||||}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}}}||||||||||___||||||||||}}}}}}}}}}||||||}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}~~||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}||||||||||___|||||||||}}}}}}}}}}}}|||||}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}~||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}|}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||____|||||||||}}}}}}}}}}}}}||||}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}|||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}~||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||______||||||||}}}}}}}}}}}}}}||||}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}|||||||||||____|||||||||}}}}}}}}}}}}}||||}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}|||||||||||____|||||||||}}}}}}}}}}}}}|||||}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}||||||||___|||||||||}}}}}}}}}}}||||}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}||||||____|||||||||}}}}}}}}}}}}|||}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}||||____|||||||||}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}||||____|||||||||}}}}}}}}}}}||||}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||____|||||||||}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||____|||||||||}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||||||____|||||||||}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||||||||____|||||||||}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}~||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}}||||||||||||||____|||||||||}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}~||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}|||||||||||||____|||||||||}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||||||||_____|||||||||}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||||||||_____|||||||||}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}|||||||||||||||||||||||}}}}}}}}}}~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}|}||||||||||||}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||||||||||||_____|||||||||}}}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}||||||||||}||||}}}}}||}||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||||||||||||_____|||||||||}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}||||||||||||||||||||||||}}}}}}}}}}~~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||||||||||||_____|||||||||}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||}}|||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}||||||||||||||||||||||||}}}}}}}}}}~~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||||||||||||_____|||||||||}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||}}|||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}||||||||||||||||||||||||}}}}}}}}}}~~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||||||||_____|||||||||}}}}}}}}}}}}|||}||}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||}}|||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}~~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||||||||_____||||||||}}}}}}}}}}}|||}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}||||||||||}||||}}}}}}}}||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}~~||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||||||||_____|||||||}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}||||||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||||||||_____|||||}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||||||||||||____|||}}}}}}}}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~~}}}}}||||||||||||||____}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}|||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||||||||___}||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||___}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}|||}}|||||||||||||||||||||||||||||||||||||||||{||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}|||||||||||___}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||{{{{{{|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}||||||||||___}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}||||}}|||||||||||||||||||||||||||||||||||||{{{{{{{|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}||||}}|||||||||||||||||||||||||||||||||||||{{{{{{||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}||}}}}}}}||||||||||||||||||||||||||||||||||{{{{|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||___|||||}}}}}}}}}}|||||||||||||||||||}}}}}}}}~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}||||}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||___|||||||||||}|||}||||||||||||||||||||}}}}}}}}~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}||||}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||}}}}}}}}~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}||||}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||}}}}}}}}~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||}}}}}}}}~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||||}}}}}}}~||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||||}}}}}}}~|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||||}}}}}}}~|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||||}}}}}}}~|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||||}}}}}}}~|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||___||||||||||||||||||||||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||||}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}|}}}|}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||||}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||____|||||||||||||||||||||||||||||||||||||}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}|}}}|}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||||}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}|}}||||||}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||}}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}|}}||||||}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||}}}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}|}}}|}}||||||}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}|}}}}}}}}}}|}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||____||||||||||||||||||||||||||||||||}}}}}}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||}}||}}}|}}|}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||}}||}}}|}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||__|||||||||||||||||||||||||||||||}}}}}}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||_||||||||||||||||||||||||||||||||}}}}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}~~}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}}~~}~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}~||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}~~~~~}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||__|||||||||||}}||||||||||||||||||||||}}}}}}}~|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||___|}|}}}}}}}}}}||||||||||||||||||||}}}}}}}~||||||||||||||||||}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||___|}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}~||||||||||||||||||}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||___|}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}~||||||||||||||||||}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}~~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}|||}|||}|||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||____|}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}~|||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||___|}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}||||||||||||||||}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||___|}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}|||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||___|}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}|||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||___|}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}~||||||||||||||||||}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{||||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}|}}}|||}|||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||____|}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}|||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||___|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||___|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}}}||}|||}|}}}}}}}}}}}}}}}||||||||||||||||||}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}||||||||||||||||||}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}||||||||||||||||||}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}||||||||||||||||||}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}||||||||||||||||||}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}~||||||||||||||||||}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}~|||||||||||||||||}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~|||||||||||||||||}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~|||||||||||||||||}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||_||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}~|||||||||||||||||}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~}}}}}}~|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||___||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~}}}}}}}}~||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~|||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||}}}}}}~||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~||||||||||||||||||||||||||||||||||||||||||||||||||}|||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||}}|||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||||}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||}}||||||||||||||||_||||||||||}}}}}}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}||||||||}}||||||||||||||||_||||||}}}}}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~}}}||||||||||||||}|||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}||||||||}}||||||||||||||||_|||||}}}}}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~}}}||||||||||||}}}}}}}}}}|||||||||||||||||||||||}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||}}}|||||||||||||||_||||||||||}}}|}||}|||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}|||||||||||}}}}}}}}}}}|||||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||}}||||||||||||||||_|||||||||}}}|}||}||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}|||||||||||}}}}}}}}}}}||||||||||||||||||||||}}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||}}||||||||||||||||_|||||||||}}}|}||}||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}|||||||||||}}}}}}}}}}}||||||||||||||||||||||}}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||}}||||||||||||||||_|||||||||}}}|}||}||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||}}||||||||||||||||_|||||}}}}}|}}}|}||}||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~}}}||||||||||||||}||||}||||||||||||||||||||||||}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||}}}|||||||||||||||_|||||}|}}|}}}|}||}||||||||||||||||||||||}}}}}}~|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~}}}}}}}~~}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||}||||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}||||||||}}||||||||||||||||_|||||}}}}}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}~~~~~}}}}}}~~~}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||}||||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}||||||||}}||||||||||||||||_|||||}}}}}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||}}||||||||||||||||||||}}||}}}}}}}}}}}}||||||||||||||||||}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}||||||||||||||||||}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||}}||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}||||||||||||||||||}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||}}||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}}|||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||}}|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}}}||||||||||||||}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}}}||||||||||||||}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||}|||||||||||}}}}}}}}}}|||||||||||||}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}|||||||||}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||~}}}}}}}}}}|||||||||||||}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||~}}}}}}}}}}|||||||||||||}}}}}}}}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||~}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||~}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}||||||||||||||||||||}|}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||}|||||||||||}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}|||||||||||||||||||||}|||}|}}}}}}}}}}|}||||||}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}~~~}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}||||||||||||||||_|||||}||||||||||||||||||}|||}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}~~}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}||||||||||||||||_|||||||||}||||||||||||||||||}|||}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}||||||||||||||||_||||||||||||}}}}}|}||||||||||||||||||}||||}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||_||||||||||||}}}}||||}||||||||||||||||||}|||}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}|}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}}|||||||||||||||}}}}}}}}}}}}||}}||}||||||||||||||||||||||||||||__|||||||||||||}}}}}}|||}||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}|}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}|||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||__||||||||||||||}}}}}}}}}}|||}||||||||||||||||||}|||}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||||}|}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||}||}}}}||||||||||||||||||||||||||||__||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}||||||||||||||||||||||__||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}~||||||||||||||||||}}}|||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}||||||||||||||}|}}}}|||||||||||||||||___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~||||||||||||||||||}}}}{||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}||||||||||||||}|}}}}|||||||||||||||||___||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~||||||||||||||||||}}}}{||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}|||||||||||||}}}}}}}}|||||||||||||||||___}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~|||||||||||||||||}}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}|||||||||||||||}|||}}|||||||||||||||___||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~||||||||||||||||}}}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}|||||||||||||||}}}}}}|||||||||||||||||||___||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~|||||||||||||||||}}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}|||||||||||||||}}}}}}|||||||||||||||||||||||___||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~|||||||||||||||||}}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}||||||||||||||}}}}}}}}||||||||||||||||||||||___||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}{{||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}|||||||||||||}}}}}}}}}}|||||||||||||||||||||||___||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}{{||||||}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}|||||||||||||||}}}}}}|||||||||||||||||||||___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~||||||||||||||||||}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}|||||||||||||||}}}}}}|||||||||||||||||||||___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}~||||||||||||||||||}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||||}}}}|||||||||||||||||||}}|||||||||||||||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}}}}~|||||||||||||||||}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||__||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}~||||||||||||||||||}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||__||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~||||||||||||||||||}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||__||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}~||||||||||||||||||}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||__||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}~||||||||||||||||||}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||__||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}||||||||||||||||{{{{{{{||||||||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~|||||||||||||||||}}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}||||||||||||||||{{{{{{{||||||||||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~|||||||||||||||||}}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}|||||||||||||||{{{{{{{{|||||||||||||||||||__||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||}}}}}{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}||||||||||||||||{{{{{{{|||||||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~|||||||||||||||||||}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}||||}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}||||||||||||||||{{{{{|||||||||||||||__|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~|||||||||||||||||||||}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}||||}}}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}||||||||||||||||{{{{{||||||||||||||___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||||||}}}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}||||||||}}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}||||||||||||||||{{{||||||||_____|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||||||||}}}{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}||||||||}}}}}}}}}~~_}}}||||||||||||||||||||||||||}}}}|||||||||||||||||||||___||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~|||||||||||||||||||||||||}}}{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}||||||||||}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}||||||||||||||||||||||__||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||}}}{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}|||||||||||||||}}}}}}}}}}}}||||||||||}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}||||||||||||||||||||||__||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||||||||||}}}{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}||||||||||||||||}}}}}}}}}}}|||||||||||}}}}}}}}~~}}||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||_||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~|||||||||||||||||||||||||||}}{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}|||||||||||||||||}}}}}}}}}}}|||||||||||}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}||||||||||||||}|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~|||||||||||}||||||||||||||}}}{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~|||||||||||||||||}}}}}}}}}}}|||||||||||}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}|||||||||||}}}}}|}|||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||}}}}}}}}}}}}}|||||||||||}}}{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~|||||||||||||||||}}}}}}}}}}}|||||||||||}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||}}}}}}}}}}}}}||||||||||}}}}{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~||||||||||||||||}}}}}}}}}}}}|||||||||||}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}||||||||}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}||||||||}}}}}{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~|||||||||||||||||}}}}}}}}}}}|||||||||||}}}}}}}}~~}}}||||||||||||||||||||||||}}}}}}}||||||||}}}}}}}}}}}}}}||||||||||||||||||||||||}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}|||||}}}}}}{{|||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}||||||||||}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}}}}}}}}}}}}}}}}}||||||||||||}}|||||||||||_||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}|{{|||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}||||||||||}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}}}}}}}}}}}}}}}}}||||||||||||}}|||||||||||_||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}|{{|||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}||||||||}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}||||}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}||||||||_||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}||||||||}}}}}}}}}}~}}|||||||||||||||||||||||||}}}}}}}}|||||}}}}}}}}}}}}}}}}}}|||||||||||||}}}||||||||||_|||||||}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}|||||||{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}||||}}}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}|||||||||_||||||}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}||||||{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}|||||||||_||||||}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}||||||{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}|||||||||_||||||||||||||||||}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}||||{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}||||||_||||||||||||||||||||||||}|}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}|}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}||||||||_|||||||||||||||||||||||}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}||||||{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}|}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}||||||||_|||||||||||||||||||||||}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}||||||{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}||||||||||||||||||||||||}}}}}}}}|||||}|}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}|||||||||_|||||||||||||||||||||}||}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}||||}}}}}}}}}||||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}|}}}}}}}}}||||}}}}}}}}}}|||||||||||||}||||||||||_||||||||||||||||||||}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}||||}}}}}}}}}||||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}|}}}}}}||||||||||||||||||||||||||||||_||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}||||}}}}}}}}}||||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}||||}}}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}|}}}}}}||||||||||||||||||||||||||||_||||}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}||||}}}}}}}}}||||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}||||||||}}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}}|||||}|}}}}}||||||||||||||||||||||||||||||_||||}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}||||}}}}}}}}}||||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}||||||||}}}}}}}}}~}}|||||||||||||||||||||||||}}}}}}}}|||||||}}}}|||||||||||||||||||||||||||||||_||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}||||}}}}}}}}}||||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}||||||||||}}}}}}}}~~}}}||||||||||||||||||||||||}}}}}}}}||||||}}}}}||||||||||||}}||||||||||||||||||_||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}|||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}||||||||||}}}}}}}}~~}}}||||||||||||||||||||||||}}}}}}}}||||||}}}}}||||||||||||}}||||||||||||||||||_||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}|||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}|||||||||||}}}}}}}}}~}}}|||||||||||||||||||||||}}}}}}}}}}}}|}}}}}}|||||||||||}}}|||||||||||||||||_||||}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||{{{|||||||}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}||||||||||}}}}}}}}}~}}}}|||||||||||||||||||||}}}}}}}}||||||}}}}}||||||||||||}}||||||||||||||||_||||}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}|||||||||}}}}}}}}}~}}}}}||||||||||||||||||||}}}}}}}}|||||||}}}}|||||||||||}}}||||||||||||||_||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}|||||||||}}}}}}}}}~}}}}}||||||||||||||||||}}}}}}}}|||||||}}}}|||||||||||}}}||||||||||||_||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}||||||||||}}}}}}}}}~}}}}}}||||||||||||||||}}}}}}}}|||||||}}}}|||||||||||}}}}}||||||||_||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||{{{|||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}|||||||||}}}}}}}}}~}}}}}}|||||||||||||||}}}}}}}}||||||}}}}}|||||||||||}}}}}|||||||_|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}|}|||||||||||}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||{{{|||||||}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}||||||||||}}}}}}}}}~}}}}|||||||||||||||}}}}}}}}}}}||}}}}}}||||||||||||}}}}||||||_||||}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}|||{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}||||||||||}}}}}}}}}~}}}}|||||||||||||||}}}}}}}}}}}||}}}}}}||||||||||||}}}}||||||_||||}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}|||{{{||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}||||||||||}}}}}}}}}~||||||||||||||||}}}}}}}}}}}|}}|}}}}|||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}~}}}}}}}}}}}}}}}||||||}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~|||||||||||||||||}}}}}}}}}}}|||||||||||}}}}}}}}}~||||||||||||||||}}}}}}}}}}}||||}}||}||||||||||||||||||||||||||}}}}}}}}}}||||||}}}||||}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}}}||||||||||||||||||||||}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~||||||||||||||||||||}}|||}||||||||||||}}}}}}}}}}~|||||||||||||||||}}}}}}}}}}}}|}}||||||{{||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}||||||||||||||||||||||}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~}}}}||||||||||||||||||||}||||}||||||||||||}}}}}}}}}}~|||||||||||||||||}}}}}}}}}}}}|}}|}|||||||{{||||||||||||||||||||||||||||||}}}}}}}}}}}}||}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}|||||||||||||||||||||}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||}}}}}}}}}}}}}|||}||||||||||||||||||||{{{{|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}~|||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||||||||||{{{||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}~||||||||||||||||||||}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}~~}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||}}}}|||||{{{||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}||||||||||||||||||||}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||}|||}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}||||||||||||||||||||}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}~~||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}|||||||||||||||||||||||||}||||}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}}~}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}~|||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||}}}|}}}}}|||||||||||||||||||||||||||}||||}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}|||||||||||||||||||}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||}|}}|}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}||||||||||||||||||||}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||}||||}}}}}|||||||||||||||||||||||||||||||||}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}||||||||||||||||||||}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||}||||}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}|||}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}||||||||||||||||||||}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}~~||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||}}||}}}}}}|||||||||||||||||||||||||||||||||||||}||||}}}}}}}}}}|}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}||||||||||||||||||||}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}|||}||||||||||}|||}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}|||}|||||||||||||||}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}||||||||||||||||||||}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}||||||||||||||||||||}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|}|||}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}}|||}||||||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}}}}|||||||||||}|||}|||}}}}|||||{{{|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}||||||||||||||||||||}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}|||{{{{{||||||||||||||||||||||||||||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}~||||||||||||||||||||}}}}}}}}}||||||||||||||||||}}}}}}}}|||||{{{{{|||||||||||||||||||||||||||||||||||||||||}}}}}}}}|}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}~||||||||||||||||||||}}}}}}}}|||||||||||||||||||}}}}}}}}}}|||{{{{||||||||||||||||||||||||||||||||||||||||}}}}}}}}|}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}~||||||||||||||||||||}}}}}}}}|||||||||||||||||||}}}}}}}}}}|||{{{|||||||||||||||||||||||||||||||||||||||||}}}}}}}}|}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}}~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}~||||||||||||||||||||}}}}}}}||||||||||||||||||}|}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}|}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}~||||||||||||||||||||}}}}}}}|||||||||||||||||||}}}}}}}}}}}|||||||||||||||||||||||||||||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}|||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}~~}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}~||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}~~|||||||||||||||||||||}}}}}}||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}~~}}}}}}}}}||||||||}}}}}}}}}~|||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~}}}}}}}|||||||||}}}}}}}~~|||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}|}}}}}}}}}}}}||||||||||||}}|||}||||||||||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~}}}}}||||||||}}}}}}}~~|||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}||||||||}}}}}}}~~}||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||||||||||||||||||||||||||||||}|}}}}}}}}||||||||||||||||||||||}||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~||||||||}}}}}}~~}}}|||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~||||||||}}}}}}~~}}}|||||||||||||||||||}||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}~~~~~~~~~~~~~~}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}||||||||||||||||||}}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~||||||||}}}}}}~~}}}}|||||||||||||}}}}}}||||||}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}||||||||||||||||||}}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~~}}}||||||||||||}}}}}}}}}}||||}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||||_||||||||||||||||||}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}||||||||||||||||}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~~}}}||||||||||||}}}}}}}}}}}|||}}}}|||||||||||||||||||||||}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||}}}}}}}||||||||||||||||}|}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~}}}}|||||||||||}}}}}}}}}}}}|||}}}}|||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||||_||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||}}}}}}||||||||||||||||||}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~}}}}|||||||||||}}}}}}}}}}}}|||}}}||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||}}}}}}||||||||||||||||||}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~}}}||||||||||||}}}}}}}}}}||||}}||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||}}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||||}}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~}}}||||||||||||||}}}}}}}}||||}}|||||||||||||}}}}}}}}}}}|||||||||||||||||||||||||}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||||}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~}}}||||||||||||||}}}}}}||||||}}||||||||||||}}}}}}}}}}}}||||||||||||||||||||||}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||||}}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~}}}}|||||||||||||}|}}}}||||||}}||||||||||||}}}}}}}}}}}}||||||||||||||||||||||}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||||}}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~~}}}}||||||||||||}|||||||||||}}}||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||}}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}|||||||||||||||||}}}~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~|||||||||}}}}}}~~~}}}}}||||||||||}||||}||||||}}}}|||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}~~~~~~~~~~~~}}}}}}|||||||||||||||||||_||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||||}}}}~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~~}}}}}}}||||||||||||||||||||}}}}|||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}||||||||||||||||||}}}~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~~}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}||||||||||||||||||}}}~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~|||||||||}}}}}}}~~}}}}}}}|||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||_||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}||||||||||||||||||}}}~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~||||||||}}}}}}~~}}}}}}}||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}||||||||||||||||||}}}~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~|||||||||}}}}}}}}}}}~~}}}}}}||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}|||||||||||||||||}}}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~|||||||||}}}}}}}}}}}~~}}}}}}||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}|||||||||||||||||}}}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~||||||||}}}}}}}~~}}}}}}|||||||||}||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||_||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}||||||||||||||||||}}}}}~~}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~|||||||}}}}}}}~~}}}}}||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||}}}}}}}}~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||}}}}}}}}|||||||||||||||||||}}}~~}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~|||||||}}}}}}}~~}}}}|||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~~~~~~~~~~}}}}}}}||||||||||||||||_||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||}}}}}}}|||||||||||||||||||||}}}}~~}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~||||||}}}}}}}~~}}}}|||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||}}}}}}}}||||||||||||||||||||||}}}}}~~}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~||||||}}}}}}}~~}}}}|||||||||||||||||}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}}}|||||||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}||||||||||||||||||}}}}}}}||||||||||||||||||||||||}}}~~}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~||||||}}}}}}}~~}}}}|||||||||||||||||}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}~~~~~~~~~~~~}}}}}}}}}|||||||||||||_|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~||||||}}}}}}~~~}}}}}}|||||||||}||||||}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~||||||}}}}}}~~~}}}}}}}|||||||}}}}||||}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}~~~~~~~~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}|||||}}}}}}~~_}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}|}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~}}}}||||}}}}}}~~_}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||||||||}}|}||||||||||||||}}}~}}}}}}}}}}|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~~}}}}}}}||}}}}}}~__}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}~}}}}}}}}}|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~~~}}}}}}}}}}}}}}}~__}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}||||||||||||||||||||}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}~~}}}}}}}}}|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}~~~~_~}}}}}}}}}}}}}}}}__~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}}}|||||||||||||||||||||||}}}}||||||||||}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}~~~~~_~~~~}}}}}}}}}}}}}}}}}^____~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~||}}}}|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||}}}}88}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~~~}}}}}}}}}}}}}}}}~^____^~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^^|||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~}}}}}}}}||||||||}}}}888}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~~~}}}}}}}}}}}}}}}}~~^____^~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^^|||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}||||||||}}}}888}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~__~~~~~~}}}}}}}}}}}}}}}}}~~~^^___^~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}__}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^^_||||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}}|||||||}}}}}8888}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~_~~~~~~}}}}}}}}}}}}}}}}}}~~~~~^^___^~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^_|||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}||||||||}}}}8888}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~_~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~^^___^~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}__}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^_|||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}}|||||||}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}|}}}}|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~_~~~~~~}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~^^___^~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}__}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^_|||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~~~~~~~~}}}}}}}}}|||||||}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~^^___^~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^^^|||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}|||||||}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~__~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~^^^___^~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^^_||||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~}}}}}}}}}}}||||||}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~^^^___^~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^^|||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~}}}}}}}}}}}}}|||||||}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~^^^___^~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^^|||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~}}}}}}}}}}}}}}|||||||}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}~}~~~}}}}~}}}}}}}}}}}}~~~~~~~~~~~~^^^___^~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}||||||}}}}}}888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~~~^^____^~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~^||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}||||||||}||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~^^^____~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}__~}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~~^^^____~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}__~~~}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}888}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}~~~~~~~~~~~]^^____~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}____~~~~~}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}888}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~^^____~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}____~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~||}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}888}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~~}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~^^__^~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____~~~~~~~~~~}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~|}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~~}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~^^__^~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____~~~~~~~~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}_}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~|}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~__~~~~}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~}}}}}~~~~~~~~~~~~~^^__^~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}_}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~|}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~^^___~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}_}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~^_|}}}}}}||||||||||||||||||}|||||||||}}}}}}}}}}||||}|||}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~__~~~}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^___~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}_}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~^___|}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~__~~~}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^___~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}_}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}~~~~~~~^___|}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}}}}}}||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~__~~~}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^___~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~}}}~}}}}}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}~~~~~~~^^__|}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8988}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~__~~~}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^____~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}~~~~~~~^__}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8988}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^___^~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}_}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~~~~~~^||}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~~}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^__^~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~~~~~~|}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~_~~~~}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^____~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}_}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~~~~~~||||}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~__~~~~}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^__~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}__}}}}}}}}}}}}}~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~~~~~~|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}~~~~~_~~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~~~~~~~||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}~~~~~__~~~~~~~~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~~~~~~~||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}~~~~~__~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~~~~~~~~|||||}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}~}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}~~~~~~~__~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}~~~~__~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~}}}}}}}}}}}}}}}~~}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}~~~~~~~~~}}}}~~~~}~}}}}}}}}}}}}}}~~~~~~|||||}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}~}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}~~~~~~____~~~~~~~~~~~~~}}}}}~~~}}}}}~}}}}}}}}}}~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}~~~~~_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}~}}}}}~~~}}}}~}}}}}}}}}}~}}}~}~~~}}}}~~~~}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}|||||||}}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}~}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}~~~~~~_____~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}~~~~~~_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}~}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}~~~~~_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}~~~~~~~~~~~}}}}}}}}}~~~~~~_~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}||||||||}}}}}}}~~~~}_}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}~~~~~____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}||||||||}}}}}}}~~~~~~_}}}}}}}}}}}}}}}}}}}|}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}~~~~~_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}||||||||}}}}}}~~~~~}_}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}~}~~~~~~~}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}~~~~~_____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}||||||||}}}}}}~~~~~}_}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}~~~~~__~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}||||||||}}}}}}~~~}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}~~~~~___~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}||||||||}}}}}}}~~}_}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}~}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}~~~~~~____~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}}~}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}~~~~~~___~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}}~}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}~~~~~~~______~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}~}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}~~~~~~___~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}|||||||}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}~}}}}~~~}~}}~}}}~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}}}}}}}}}}}}}}}}}}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}|||||||}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}~~}}~~~~~~}}~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}~}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}_}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}~~~~~~}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}||||||||}}}}}~_}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}~~~~~~~~~~~~~~~}~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~||||||||}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}~~}}~~~~~~~~~~}}}}}~}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}||||||||}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}||||||||}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~||||||||}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}~~~~~~}}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~||||||||}}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}~}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}~}}}}}}}}}}||||||||||}}}}}}}}}}~~}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}~}}}}}}}}}}||||||||||}}}}}}}}}}~~}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}~}}}}}}}}}}||||||||||}}}}}}}}}}~}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}}~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}~}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}||||}||||}||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}|||||}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}|||||}||||||||||||||||||||||||||||||||||}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}|||||}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}~~~}}}}}~}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||}}}}}}}}}}~~}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||}}}}}}}}~~~~~}}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||}}}}}}}~~~~}}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}}}}}}~~~~~~~}}}}}}}}|||||||||}}}}}}~~~~}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||}}}}}}~~~~~~~}}}}}}}}|||||||||}}}}}}~~~~}}}}}}}}}}}~~~~~}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}~~~}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}~~~_}}}}}}}}}}}~~~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}~~~}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}~~~}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}~~~}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}~~~}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}~~~}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}~~~}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}_~~~}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}~~~}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}~~~~}}}}}}|||||||||}}}}}}}}~~~~~~~}}}}}}||}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}~~~~}}}}}}|||||||||}}}}}}}}~~~~~~~}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}~~~~}}}}}}}|||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}~~~~~}}}}}}}}|||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}~~}}}}}}}}}}|||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}~}}}}}~~~}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}|||||}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}||||||||||||||||||||||||||||||||||}|||||}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}|||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||}||||}||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}||||||||||||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}~~~~~~~~~}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}||||}||||||||||}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}~}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~}}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}~}}}}}}}}}}||||||||||}}}}}}}}}}~}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}~~}}}}}}}}}}||||||||||}}}}}}}}}}~}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}~~}}}}}}}}}}||||||||||}}}}}}}}}}~}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}~}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}}||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}}~~~~~~}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}||||||||~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}||||||||}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}||||||||}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}~}}}}}~~~~~~~~~~}}~~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}||||||||~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~}~~~~~~~~~~~~~~~}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}_~}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~~~~~~}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}~}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~}}~~~~~~}}~~}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}|||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~}}}}}}}}}}}}}}}}}}}}}}~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~}}}~}}~}~~~}}}}~}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}|||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~___~~~~~~}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}~}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~______~~~~~~~}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}~}}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~___~~~~~~}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}~}}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~____~~~~~~}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}~}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}_}~~}}}}}}}||||||||}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~___~~~~~}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}~~~}}}}}}||||||||}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~__~~~~~}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}_}~~~~~}}}}}}||||||||}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____~~~~~}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}~~~~~~~}~}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}_}~~~~~}}}}}}||||||||}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____~~~~~}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}|}}}}}}}}}}}}}}}}}}}_~~~~~~}}}}}}}||||||||}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~____~~~~~}}}}}}}}}}}~~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}_}~~~~}}}}}}}||||||||}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_~~~~~~}}}}}}}}}~~~~~~~~~~~}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____~~~~~}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}~}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}||||||||}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____~~~~~~}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~_____~~~~~~}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}~}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}_}}}}}}|||||||}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}~~~~}}}}~~~}~}}}~}}}}}}}}}}~}}}}~~~}}}}}~}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____~~~~~}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~}}}}}}}}}}~}}}}}~~~}}}}}~~~~~~~~~~~~~____~~~~~~}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}~}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}|||||~~~~~~}}}}}}}}}}}}}}~}~~~~}}}}~~~~~~~~~}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}~~}}}}}}}}}}}}}}}~~~}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~__~~~~}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~__~~~~~~~}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}}~}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~}}}}}}}}}}}}}}}}|||||~~~~~~~~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~__~~~~~}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||~~~~~~~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}~~~~~~~~__~~~~~}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||~~~~~~~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~~~~~_~~~~~}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||~~~~~~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~}}}}}}}}}}}}}__}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~__^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}~~~~__~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}||||~~~~~~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}_}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~____^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}~~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}|~~~~~~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~^__^^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}~~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}||^~~~~~~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}_}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~^___^^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8898}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}__^~~~~~~~}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~____^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}~~~__~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}8898}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}|__^^~~~~~~~}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}}}}}}~}}}~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~___^^^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}~~~__~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}||||||}}}}}}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}|___^~~~~~~~}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}_}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~___^^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}~~~__~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}|___^~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}_}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~___^^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}~~~__~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}|||}||||}}}}}}}}}}|||||||||}||||||||||||||||||}}}}}}|_^~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}_}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~___^^~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}_}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~^__^^~~~~~~~~~~~~~}}}}}~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}~~~~__~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}_}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}~~~~~~~~~~~~~_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~^__^^~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}~~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}8888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}~~~~~~~~~~_____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~^__^^~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}~~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}}}}}}}}~~~~~~~~____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~____^^~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}}}}}}}}}}}~~~~~____}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~____^^]~~~~~~~~~~~}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}~~~__}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~____^^^~~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}~__}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~____^^^~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||}||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}888}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~^____^^~~~~~~~~~~~~~}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}888}}}}}}||||||}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~^___^^^~~~~~~~~~~~~}}}}}}}}}}}}~}}}}~~~}~}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}|||||||}}}}}}}}}}}}}}~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||^^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~^___^^^~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}|||||||}}}}}}}}}}}}}~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||^^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~^___^^^~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}}||||||}}}}}}}}}}}~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||||_^^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~^___^^^~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~__~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}|||||||}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||^^^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~^___^^~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~_~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}|||||||}}}}}}}}}~~~~~~~~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||_^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}__}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~^___^^~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}~~~~~~_~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||}}}}|}}}}}}}}}}}}}}}}}}}}}}}}8888}}}}}|||||||}}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||_^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}__}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~^___^^~~~~~}}}}}}}}}}}}}}}}}}}}~~~~~_~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}8888}}}}||||||||}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||_^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~^___^^~~~~~}}}}}}}}}}}}}}}}}}~~~~~~_~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}8888}}}}}|||||||}}}}}}}~~~~~~~~~~~~~~~~~~~}}}}}||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}||||_^^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}__}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~^___^^~~~}}}}}}}}}}}}}}}}}~~~~~~__~~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}888}}}}||||||||}}}}}}}}~~~~~~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||^^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}_}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~^____^~~}}}}}}}}}}}}}}}}~~~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}888}}}}||||||||}}}}}}}}~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||^^~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~^____^~}}}}}}}}}}}}}}}}~~~~~_~~~~~}}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}88}}}}||||||||}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||}}}}||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~____^}}}}}}}}}}}}}}}}}~~~~_~~~~~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}||||||||||}}}}|||||||||||||||||||||||}}}}}}}}}}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~__}}}}}}}}}}}}}}}}~_~~~~}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||||||||||||||||||}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}__~}}}}}}}}}}}}}}}~~~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||}}}}}}}}}~}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}__~}}}}}}||}}}}}}}~~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||}}}}}}}}}}~}}}||||||||||||||}|}}||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}_~~}}}}}}||||}}}}~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}_~~}}}}}}|||||}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}|||||||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~~~~~~~~}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}||||}}}}|||||||}}}}}}}~~~}}}}}}||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}|||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~~~~~~~}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}||||||}|||||||||}}}}}}~~~}}}}}}||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}~~}}|||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||}}}}}}}}}~~~~~~~~~~~~}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}|||||||||||||||||}}}}~~}}}}}}}||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}||||||||||||||||||||||||}}}}}}}||||||||||||||||||}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||}}}}}}}}~~~~~~~~~~~~~}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}|||||||||||||||||}}}}~~}}}}}}}||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}}||||||||||||||||||||||}}}}}}}}|||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}|||||||||||||||||}}}}~~}}}}}}}||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}|||||||||||||||||||||}}}}}}}||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||_||||||||||||||||}}}}}}}~~~~~~~~~~~~}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}|||||||||||||||||}}}}~~}}}}}}}|||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}|||||||||||||||||||}}}}}}}}||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}}}|||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||}}}}}~~}}}}}}}|||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}||||||||||||||||||}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||_||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||}|||||||||}}}}}}~~}}}}}}}||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}}|||||||||||||||||}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||_||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||}}}}}}~~}}}}}}}}}}}|||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}}|||||||||||||||||}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||_||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||}}}}}}~~}}}}}}}}}}}|||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~}}}||||||||||||||||||}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||}}}}}}}~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~}}}||||||||||||||||||}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||}}}}}|||||||||||||||||}}}}}}}~~}}}}}}}|||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~}}}||||||||||||||||||}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}~~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~}}}||||||||||||||||||}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||}}}}||||||||||||||||||||}}}}}}}~~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~}}}}||||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||||}}}}}}~~~~~~~~~~~~}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||}}}}||||||}||||}||||||||||}}}}}~~~}}}}}}|||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}~}}}|||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||}}}|||||||||||}||||||||||||}}}}~~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}||||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}||||||||||||||||||||||}}}}}}}}}}}}||||||||||||}}||||||}}}}|}|||||||||||||}}}}~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}||||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}||||||||||||||||||||||}}}}}}}}}}}}||||||||||||}}||||||}}}}}}||||||||||||||}}}~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}||||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||_|||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}|||||||||||||||||||||||||}}}}}}}}}}}|||||||||||||}}||||}}}}}}}}||||||||||||||}}}~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}||||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}|||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||}}||||}}}}}}}}}}||||||||||||}}}~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}||||||||||||||||||}}}}}}||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||_||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||}}}|||}}}}}}}}}}}}|||||||||||}}}}~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}||||||||||||||||||}}}}}}||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||_||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}|||}}}}}}}}}}}}|||||||||||}}}}~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~}}}}|}||||||||||||||||}}}}}}}||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||_||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}|||||||||||||||||||||||}}}}|||}}}}}}}}}}}||||||||||||}}}~~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}||||||||||||||||}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}||||||||||||||||||_||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}||||}}}}}}}}}}||||||||||||}}}~~~}}}}}}||||||||~}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}||||||||||||||||||}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||}}}}}}|||||||||||||}}}}~~}}}}}}||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}~~}}}}||||||||||||||||||}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~~}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}||||||}|||||||||||||||||||}}}~~}}}}}}||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}~~~~~~~~~~~~~}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||}}}~~}}}}}}||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||}||||||||||||||||||||||}}}}}}}}|}||||||||||||||||||||||||||||||||}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||||||}~~}}}}}}}||||||||}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||~~}}}}}}}||||||||}}}}}~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||}}}}}}}|||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||||||}|||}}||||||||||||}}}}}}}}}}}}|}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||~~}}}}}}}|||||||||}}}}}}}~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||~}}}}}}}}}||||||||}}}}}}}}}~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||||}}}}}}|||||||||||||||||||||~~}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||~}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||||||||}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||}|||||||||||||||||||||||||||||||}}}}}}}}}}}|||||||||||||||||||}}}}}}}||||||||||||||||||||~}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}|}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}|}||||||||||||||||||}}}}}}}||||||||||||||||||||~}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}~}}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}|}}}}}}}}|||||||||||||||||||||||||||||||||||||||||{{{|||}}}}}}}}}}|||||||||||||||||||}}}}}}}}||||||||||||||||||||~}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}|}}}}}}}}||||||||||||||||||||||||||||||||||||||||{{{{|||}}}}}}}}}}|||||||||||||||||||}}}}}}}}||||||||||||||||||||~}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}|}}}}}}}}|||||||||||||||||||||||||||||||||||||||||{{{{{|||||}}}}}}}}||||||||||||||||||}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||}||||||||||||||||||||||||||||||{{{{{|||}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}||||||||||||||||||||}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||{{{|||||}}}}|||}|||}|||||||||||}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||}|||}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||}|||}|}}}}}}}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}||||||||||||||||||||}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}||||||||||||||||||||}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}||||||||||||||||||||}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||||}|||}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}||||||||||||||||||||}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}|||}||||||||||}|||}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}||||||||||||||||||||}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}|}}}}}}}}}}||||}|||||||||||||||||||||||||||||||||||||}}}}}}||}}||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||~~}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}||||||||||||||||||||}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}|||}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}||||}||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}||||||||||||||||||||}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}|||||||||||||||||||||||||||||||||}}}}}||||}||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}||||||||||||||||||||}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}|}}|}||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}|||||||||||||||||||}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}||||}|||||||||||||||||||||||||||}}}}}|}}}|||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~}}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}||||||||||||||||||||}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}}}}}}}||||}|||||||||||||||||||||||||}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||~~}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}|||}||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||{{{|||||}}}}||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}~~}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}||||||||||||||||||||~}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||{{{|||||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||~}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||{{{{||||||||||||||||||||}|||}}}}}}}}}}}}}||||||||||||||||||~}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}|||||||||||||||||||||}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}||||||||||||||||||||||||||||||{{|||||||}|}}|}}}}}}}}}}}}|||||||||||||||||~}}}}}}}}}}||||||||||||}||||}||||||||||||||||||||}}}}~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}||||||||||||||||||||||}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||{{||||||}}|}}}}}}}}}}}}|||||||||||||||||~}}}}}}}}}}||||||||||||}|||}}||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}||||||||||||||||||||||}}}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}||||}}}||||||}}}}}}}}}}||||||||||||||||||||||||||}||}}||||}}}}}}}}}}}||||||||||||||||~}}}}}}}}}|||||||||||}}}}}}}}}}}|||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}||||||}}}}}}}}}}}}}}}~}}}}}}}}}}}}}|||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||}}}}|}}|}}}}}}}}}}}||||||||||||||||~}}}}}}}}}||||||||||}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}||||_||||||}}}}||||||||||||}}}}}}||}}}}}}}}}}}|||||||||||||||}}}}~}}}}}}}}}||||||||||}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}||||_||||||}}}}||||||||||||}}}}}}||}}}}}}}}}}}|||||||||||||||}}}}~}}}}}}}}}||||||||||}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}|||||||{{{||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}}|||||||||||}|}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||_|||||||}}}}}|||||||||||}}}}}||||||}}}}}}}}|||||||||||||||}}}}}}~}}}}}}}}}|||||||||}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||_||||||||}}}}}|||||||||||}}}}|||||||}}}}}}}}||||||||||||||||}}}}}}~}}}}}}}}}||||||||||}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||_||||||||||||}}}|||||||||||}}}}|||||||}}}}}}}}||||||||||||||||||}}}}}~}}}}}}}}}|||||||||}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||_||||||||||||||}}}|||||||||||}}}}|||||||}}}}}}}}||||||||||||||||||||}}}}}~}}}}}}}}}|||||||||}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}||||_||||||||||||||||}}||||||||||||}}}}}||||||}}}}}}}}|||||||||||||||||||||}}}}~}}}}}}}}}||||||||||}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}|||||||{{{||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}||||_|||||||||||||||||}}}|||||||||||}}}}}}|}}}}}}}}}}}}|||||||||||||||||||||||}}}~}}}}}}}}}|||||||||||}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{|||||}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||_||||||||||||||||||}}||||||||||||}}}}}||||||}}}}}}}}||||||||||||||||||||||||}}}~~}}}}}}}}||||||||||}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{|||||}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||_||||||||||||||||||}}||||||||||||}}}}}||||||}}}}}}}}||||||||||||||||||||||||}}}~~}}}}}}}}||||||||||}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{||||||}}}}}}}}}||||}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||_|||||||||||||||||||||||||||||||}}}}|||||||}}}}}}}}|||||||||||||||||||||||||}}~}}}}}}}}}||||||||}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{||||||}}}}}}}}}||||}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}||||_||||||||||||||||||||||||||||||}}}}}|}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}||||||||}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{||||||}}}}}}}}}||||}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}||||_||||||||||||||||||||||||||||}}}}}}|}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}}}||||}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{||||||}}}}}}}}}||||}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||_||||||||||||||||||||||||||||||}}}}}}|}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{||||||}}}}}}}}}||||}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}||||||||||||||||||||_||||||||||}|||||||||||||}}}}}}}}}}||||}}}}}}}}}|}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{{||||||}}}}}}}}}||||}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}||}|||||||||||||||||||||_|||||||||}|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}|}|||||}}}}}}}}||||||||||||||||||||||||}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{||||||}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}|||||||||||||||||||||||_||||||||}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}|}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{||||||}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}|||||||||||||||||||||||_||||||||}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}|}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}||||||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}|}||||||||||||||||||||||||_||||||}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{||||}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}||||||||||||||||||_|||||||||}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{||||||}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}||||||_|||||||||}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{||||||}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}||||||_|||||||||}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}}}||||}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||{{|||||||}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}|||||||_||||||||||}}}|||||||||||||}}}}}}}}}}}}}}}}}}|||||}}}}}}}}|||||||||||||||||||||||||}}~}}}}}}}}}}||||||||}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}||||||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||_||||||||}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}}||||||||}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||{{|}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||_|||||||||||}}||||||||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}||||||||||}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||{{|}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||_|||||||||||}}||||||||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}||||||||||}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||{{}}}}}}|||||}}}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}||||||||||||||||||||||||}}}}}}}}}}}}}}||||||||}}}}}}}||||||||||||||||||||||||}}}~~}}}}}}}}|||||||||||}}}}}}}}}}}|||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{}}}}}||||||||}}}}}}}}}}}}}}}}~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}||||||||}}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}|||||||||||}}}}}}}}}}}}||||||||||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{}}}}||||||||||}}}}}}}}}}}}}||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}||||||||||}}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}|||||||||||}}}}}}}}}}}|||||||||||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{}}}|||||||||||}}}}}}}}}}}}}||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}}}}|||||||||||}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}|||||||||||}}}}}}}}}}}|||||||||||||||||~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{}}}||||||||||||||}|||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||}||||||||||||||}}}}}|||||||||||||||||||||||||}}~~}}}}}}}}|||||||||||}}}}}}}}}}}|||||||||||||||||}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{}}|||||||||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||_||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||}}~~}}}}}}}}|||||||||||}}}}}}}}}}}||||||||||||||||}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{}}}||||||||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||__||||||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}||||||||||}}}}}}}}}}}}|||||||||||||||}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{}}}||||||||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||__||||||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}||||||||||}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{}}}|||||||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||___|||||||||||||||||||||}}}}||||||||||||||||||||||||||}}}_~~}}}}}}}}}||||||||}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}||||||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||_____||||||||{{{||||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}||||||||}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}}||||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___||||||||||||||{{{{{||||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}||||}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}|||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||__|||||||||||||||{{{{{||||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}||||}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}|||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||__|||||||||||||||{{{{{{{||||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{}}}}}||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||__|||||||||||||||||||{{{{{{{{|||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}}|||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||__||||||||||||||||||{{{{{{{||||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}}|||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||__||||||||||||||||{{{{{{{||||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||__|||||||||||||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}||||||||||||||||||~}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||__|||||||||||||||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}||||||||||||||||||~}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||__||||||||||||||||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}||||||||||||||||||~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||__||||||||||||||||||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}||||||||||||||||||~}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||__||||||||||||||||||||||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}|||||||||||||||||~}}}}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||__|||||||||||||||||||||||}}|||||||||||||||||||}}}}|||||||||||||||||||||||||||}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}||||||||||||||||||~}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___|||||||||||||||||||||}}}}}}|||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}||||||||||||||||||~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___|||||||||||||||||||||}}}}}}|||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}||||||{{}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||}}}}}}}}}}|||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||{{}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||___||||||||||||||||||||||}}}}}}}}||||||||||||||}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}}|||||||||||||||||~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||___|||||||||||||||||||||||}}}}}}|||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}}|||||||||||||||||~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||___|||||||||||||||||||}}}}}}|||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}}}||||||||||||||||~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||___|||||||||||||||}}|||}|||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}||||||{{{}}}}}|||||||||||||||||~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}___|||||||||||||||||}}}}}}}}|||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||{}}}}||||||||||||||||||~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||___|||||||||||||||||}}}}|}||||||||||||||}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||{}}}}||||||||||||||||||~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___|||||||||||||||||}}}}|}||||||||||||||}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||}}}||||||||||||||||||~}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||__||||||||||||||||||||||}|||||||||||||||||||}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||__||||||||||||||||||||||||||||}}}}||}|||||||||||||||}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}}}|}||||||||||||||||||||}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}|||}||||||||||||||||||}|||}}}}}}}}}}||||||||||||||__||||||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}|}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||}|||}}}}}}|||||||||||||__||||||||||||||||||||||||||||}||}}||}}}}}}}}}}}}|||||||||||||||}}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}|}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}|||}||||||||||||||||||}||||}}}}||||||||||||_||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}||||}||||||||||||||||||}|}}}}}||||||||||||_||||||||||||||||}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||}||||||||||||||||||}|||||||||_||||||||||||||||}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}~~}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||}||||||||||||||||||}|||||_||||||||||||||||}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}~~~}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}||||||}|}}}}}}}}}}|}|||}|||||||||||||||||||||}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}|||||||||||}||||||||||||||}}}~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}|}||||||||||||||||||||}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}~||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}~||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}|||||||||||||}}}}}}}}}}~||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}|||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}|||||||||||||}}}}}}}}}}~||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}|||||||||}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}|||||||||||||}}}}}}}}}}|||||||||||}||||||||||||||}}}~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}|||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}||||||||||||||}}}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}|||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}||||||||||||||}}}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||}}||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}|||||||||||||||}}}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}|||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||}}||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}|||||||||||||||||}}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||}}||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}||||||||||||||||||}}}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||}}||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}||||||||||||||||||}}||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}||||||||||||||||||}}}}}}}}}}}}||}}||||||||||||||||||||}}||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}~~}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}}}}|||||_||||||||||||||||}}||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||}||||||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}~~~}}}}}}~~~~~}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}}}}|||||_||||||||||||||||}}||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||}||||||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}~~}}}}}}}~~~~~}}}}}}}}|||||||||||}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||~}}}}}}||||||||||||||||||||||}||}|}}}|}}|}|||||_|||||||||||||||}}}|||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}||||||||||||||||||||||||}||||}||||||||||||||}}}~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||}||}|}}}|}}}}}|||||_||||||||||||||||}}|||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}||||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||}||}|}}}|||||||||_||||||||||||||||}}|||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}}||||||||||||||||||||||}}}}}}}}}}}|||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||}||}|}}}|||||||||_||||||||||||||||}}|||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}}||||||||||||||||||||||}}}}}}}}}}}|||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||}||}|}}}|||||||||_||||||||||||||||}}|||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}|||||||||||||||||||||||}}}}}}}}}}}|||||||||||}}}~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||}||}|}}}||||||||||_|||||||||||||||}}}|||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}|||||||||||||||||||||||}}}}}}}}}}||||||||||||}}}~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}}}}}|||||_||||||||||||||||}}||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}|||||||||||||||||||||||||||||}||||||||||||||}}}~~}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}}}}}||||||_||||||||||||||||}}||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}}}}}}||||||||||_||||||||||||||||}}||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}~~}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||}}||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||}||||||||||||||||||||||||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}~~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~}}}}}}||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||___||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||___||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||~}}}}}}~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}|||||||||||||||||~}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}||___|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||_|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}|||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||___|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}|||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||___|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||___|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}|||||||||||||||||~}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}||___||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||___|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}||___|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}||||||||||||||||||~}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}||___||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}||||||||||||||||||}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}||___||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}||||||||||||||||||}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}||___||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}||||||||||||||||||}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}||___||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||}}}}||||||||||||||||||}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}||___||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}||||||||||||||||||}}}}}}}}}}}}}}}|}|||}||}}}}}}}}}}}}}}}}||___||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|___||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|___|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}|||||||||||||||||}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}|____|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||}|||}}}|}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}||||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}||||||||||||||||||~}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}|___|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}|||||||||||||||||}}}}}}}}}|||||||||||||||}}}}}}}}}}}}}}}}|___|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}|||||||||||||||||}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}|___|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}}||||||||||||||||}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}|___||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}}|||||||||||||||||~}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}|____|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||}|||}|||}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~~}}}}}}}||||||{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}||||||||||||||||||~}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}|___|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}}||||||||||||||||||~}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}|___||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}~~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||}}}||||||||||||||||||~}}}}}}}||||||||||||||||||||}}}}}}}}}}|}|___|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~}}}}}}}}|||||{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||||}}|||||||||||__|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}~~~~~}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||~}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~}~~}}}}}}}}}}||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}~~}}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}}}}||||||||||||||||||||||||||||||||_||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}}}}}}|||||||||||||||||||||||||||||||__||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}|}}}||}}||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}|}}}||}}||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}}}}}}||||||||||||||||||||||||||||||||____||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}|}}}}}}}}}}|}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}}}}}|||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||||}}|}}}|}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}}}|||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||||}}|}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}}||||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||||}}|}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}|||||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}|}}}|}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}|||||||||||||||||||||||||||||||||||||____|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}|}}}|}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||||||||||||||||||||___||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||~}}}}}}}|||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||~}}}}}}}|||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~}}}}}}}|||||||||||||||||||||||||||||||||||||___||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~}}}}}}}}|||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~}}}}}}}}||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~}}}}}}}}||||||||||||||||||||||||||||||||||||___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~}}}}}}}}||||||||||||||||||||}|||}|||||||||||___|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~}}}}}}}}|||||||||||||||||||}}}}}}}}}}|||||___||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||{{{{||||||||||||||||||||||||||||||||||}}}}}}}||}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||{{{{{{|||||||||||||||||||||||||||||||||||||}}||||}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}___|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||{{{{{{{|||||||||||||||||||||||||||||||||||||}}||||}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}___||||||||||}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||{{{{{{|||||||||||||||||||||||||||||||||||||||||||}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}}___|||||||||||}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||{|||||||||||||||||||||||||||||||||||||||||}}|||}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}___|||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||}___|||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}||||||||||||||||||||}}}}|||||||||||||||||||||||||||}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}____||||||||||||||}}}}}~~~}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}}}}}}}}}}}|||____||||||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}|||||_____|||||||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||}|||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}|||||||_____|||||||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||}}}}}}}}||||}||||||||||}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||}|||}}}}}}}}}}}||||||||_____||||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~~}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}||}}||}|||}}}}}}}}}}}}|||||||||_____||||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~~}}}}}}}}}}||||||||||||||||||||||||}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}|||||||||_____|||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~~}}}}}}}}}}||||||||||||||||||||||||}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||}}|||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}|||||||||_____|||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~~}}}}}}}}}}||||||||||||||||||||||||}||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}|||||||||_____|||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||}||}}}}}||||}||||||||||}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}}}}|||||||||_____|||||||||||||||}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}||||||||||||}|}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~}}}}}}}}}}|||||||||||||||||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}||||||||}}}}}}}}}}}|||||||||_____||||||||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}|||||||||_____||||||||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}|||||||}}}}}}}}}}}|||||||||____|||||||||||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}||||||||||||}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||~}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}|||||||||____||||||||||||||}}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||~}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}|||||||||____|||||||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}|||||||||____||||||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}|||||||||____|||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}|||||||||____||||}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}||||}}}}}}}}}}}|||||||||____||||}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}|||||||||____||||}}}}}}}}}~~~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}|||}}}}}}}}}}}}|||||||||____||||||}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}}}}||||}}}}}}}}}}}|||||||||___||||||||}}}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}}}|||||}}}}}}}}}}}}}|||||||||____|||||||||||}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}||||}}}}}}}}}}}}}|||||||||____|||||||||||}}}}}}}}}}}}~~~}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}||||}}}}}}}}}}}}}}||||||||______|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||~}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||}|||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}||||}}}}}}}}}}}}}|||||||||____|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||}|}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||~}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}|||||}}}}}}}}}}}}|||||||||___||||||||||}}}}}}}}}}}}~~~~}}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}}}}}||||||}}}}}}}}}}||||||||||___||||||||||}}}}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}|||||||||}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||{{|||||}}}}}}}}~~~~~~~}}}}}}}}}||||||||||||||||||||||||||||}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||}|||||||}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}}}}}||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||~~~}}}}}}}}}}}||||||||||||||||||}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}~~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||}}}}}}}}}}}}|||||||||||||}}}}}}}}|||||||||||||||||}|}}|||||||||||||||||||||||}}}}}}||||||||||||||||||||~~~}}}}}}}}}}}}}||||}|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||{{{{{{||||||}}}}}}}}}}}}|||}}}}}}}}}}}}}}}||||||||||||}}}|||||||||||||||}}}}}}}}}|||||||||||||||||||||}}}}}}~||||||||||||||||||||~~~}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||{{{{{{{{|||||}}}}}}}}}}||}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}~||||||||||||||||||||~~~}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||||}|}}}}}}}}}}|||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||{{{{{{{{{{{||}}}}}}}}}|}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||}}}}}}}~||||||||||||||||||||~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||{{{{{{{{{{8|}}}}}}}}|}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||}}}}}}}~||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||{{{{{{{{98||}}}}}}|}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||}}}}}}}~||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||{{{{{{{987||}}}}}}||}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||}}}}}}}~||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||{{{{{|987||}}}}}}|}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||}}}}}}||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}|}}}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||9876||}}}}}|}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||}}}}}}||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}||}}}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||987||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}|||||||||||||||||||}}}}}||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||987||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}||||||||||||||||||||}}}}||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||987||}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||}}}||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||98||}}}}}}}}}}}}}}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||}}||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||987||}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||987||}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||87|}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}|||}}}}}}}}}}|||||||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||87|}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||87|}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||87|}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||87|||||||||||||||||||||||||||||||||||||||||||}}}}|||||||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||87||||||||||||||||||||||||||||||||||||||||||||}}|||||||||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||987|||||||||||||||||||||||||||||||||||||||||}}||||||||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||987|||||||||||||||||||||||||||||||||||||||||}}||||||||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||98|||||||||||||||||||||||||||||||||||||||||||}}}||||||||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||987||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||987|}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}|||||||||||}}}}}|||||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}||||||||||||||||||||||||||||||||||987|}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}|||||||}}}}}}}}}||||||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||9876|}}}}}}}}}}}}|||||||||||||||||||||||||||||||||}}||||||||||}}}}}}}}|}}}}}}}}}}}}||||||||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||987|}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}|||||}}}|}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||987||}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{|||||||||||98||}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{||||||||||8||}}}}}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}~|||||||||||||||||||||||||||||_~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{{{||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||}}}}}}}}}}}}}}}}}~|||||||||||||||||||||||||||||_~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{{{||||||||||{{{{||}}|}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}~|||||||||||||||||||||||||||||~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{{{||||||||||{|||}}||}}}}}}}}}}}}}}}||||||||||||}}}||||||||||||||}}}}}}}}}}}}}~|||||||||||||||||||||||||||||~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{{{||||||||||||||||||~~~~~~~~~}}}}}}}|||||||}}}}}}}}}}}}}||||||||||||}}}}}}}}||||||||||}}}}}}}}}}}}~||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||}}||}}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{{|||||||||||||||||||}}}~~~~~~~~~~~~~~~~}}}}}}}}||||||||||||||}}}}}}}}}}||||||||||||}}}}}}}}}}}}}||||||||}}}}}}}}}}}||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}}}||||||||||||||||||||||||||||||}}|}}}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{||||||||||_||||||||||}}}~~~~~~~~~~~~~~~~~}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}||||}}}}}}}}}}}~||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||_||||||||||||}}}}~~~~~~~~~~~~~~~~~}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}~||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||__||||||||||||||}}}}}~~~~~~~~~~~~~~~~}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||}}}}}}}}}}~|||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}__~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||||||||__||||||||||||}}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}~|||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||__||||||||||||}}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}~||||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||__||||||||||||}}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}||||}}}}}}}}}}~||||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||__||||||||||{||}}}}}~~~~~~~~~~~~~~~~}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}~||||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||_||||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||}}}}}}}}}}~||||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}~||||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}__~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}|}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||}}}}}}}}}}}~|||||||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}_~~~}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||||||||||__|||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}~||||||||||||||||||||||||||||~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}~|||||||||||||||||||||||||||~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~}}}}}}~}~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}~|||||||||||||||||||||||||~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}~||||||||||||||||||||||||~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}~~|||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||}}}}}}}}}}}}~||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}|||||}}}}}}}}}}}~|||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}|||||}}}}}}}}}}}~|||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{{||||||||||__||||||||||||}}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}||||||}}}}}}}}}|||||||||||||||||||||~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{{||||||||||__|||||||||}}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}||||||}}}}}}}}||||||||||||||||||||~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{{||||||||||__||||||||||{{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}|||}}}}|||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{{||||||||||__||||||||||{{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||{{{||||||||||__|||||||||||{{{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||{{||||||||||__||||||||||{||}}}}~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}||||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||_|||||||||||}}}}~~~~~~~~~~~~~~~~~}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}|||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}}}}}}}}}|||||||||||||||||||||||_||||||||}}}~~~~~~~~~~~~~~~~~}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}_}}}}}}}}}}}|||||||||||||||||||||||~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}|||||||||||||||||||||}}}}}}}}||||||||||||||||||||||_||||}}}~~~~~~~~~~~~~~~~~}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||~~}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}~}}}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}|||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||_|~~~~}}}||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||~~~}}}}}}}}}}}||||}|||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||||}}}}}}}|||||||||||||||||||||||__|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||~~~}}}}}}}}}}}}}|||||||||}}}}}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}|||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||__|||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~}}}}}}}}}}|||||||||||}}}}}}}}}}}~~~~~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||_||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~}}}}}}}}}}||||||||||}}}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||_|||||||||}}}}}}}}}}}}}}}}}}|||||||||||||||||||||_~~}}}}}}}}}|||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||_||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||_~~~}}}}}}}}}||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||}|||||||||||}}}}}||||||||||||||||||||||||||||_||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||_~~~}}}}}}}}}||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}||||||||||||||||||||||||||||||||||}}||||}}}}}}||||||||||||}}}}}}}}}}||||}}}}}||||||||||||||||||||||||||||||||||_|||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||_~~~~}}}}}}}}||||||||||}}}}}~~~~~~~~~~~~~}}}}}}}||||||||||||}}}}}}}}~~~~~}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||}}}}}}}}}}}||||}}}}}|||||||||||||||||||||||||||||||||_||||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||_~~~}}}}}}}}|||||||||||}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||}}}}}}}}}}}||||}}}}}|||||||||||||||||||||||||||||||||||||_||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||_~~~}}}}}}}}}||||||||||}}}~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}|||||||||||||}}}}}}|||||||||||}}}}}}}}}}}||||}}}}}||||||||||||||||||||||||||||||||||||_||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||_~~~}}}}}}}}}||||||||||}}~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||}|||||||||||||}}}}}}||||||||||||}}}}}}}}||||||}}}}}||||||||||||||||||||||||||||||||||||_||||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||_~~~}}}}}}}}}||||||||||~~~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}}}||||||||||||}}}}}}||||||||||||||}||||}||||||}}}}}|||||||||||||||||||||}}}}}|||||||||||||_||||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||_~~~~}}}}}}}}||||||||||~~~~~~~~~~~~~~~~}}}}}}}||||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}_}}}}}}}}}||||||||||||||||||||}}}}}}}}|||||||||}}}}}}||||||||||||||}|||||||||||}}}}}|||||||||||||||||||}}}}}}}}||||||||||_|||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||_~~~}}}}}}}}}||||||||||~~~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}_}}}}}}}}}|||||||||||||||||||}}}}}}}}}|||||||||}}}}}}||||||||||||||}|||||||||||}}}}}|||||||||||||||||||}}}}}}}}}|||||||||_||||||}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||_~~~}}}}}}}}}||||||||||~~~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}|||||||||}}}}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}|||||||||_||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~}}}}}}}}}||||||||||||~~~~~~~~~~~~~~~~}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}}|||||||||_||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~}}}}}}}}}||||||||||||~~~~~~~~~~~~~~~~}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}|||||||||_||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~}}}}}}}}}||||||||||||~~~~~~~~~~~~~~~~}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}|||||||||_||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||~~~}}}}}}}}}||||||||||||~~~~~~~~~~~~~~~~}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}|||||||||_||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~}}}}}}}}}||||||||||||~~~~~~~~~~~~~~~~}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}~~}}}}}}}}}|||||||||||||||||||}}}}}}}}}}}|||||||||}}}}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}|||||||||_||||||}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||~~~}}}}}}}}}||||||||||||~~~~~~~~~~~~~~~~}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}~~~}}}}}}}}}}}|||||||||||||||||}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}||||||||||_||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~~}}}}}}}}||||||||||~~~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}~~~~~}}}}}}}~~}}}}}}}}}}}||||||||||||||||||}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}||||||||||_|||||||}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~~}}}}}}}}||||||||||~~~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}|||||||||||||||||||||}}}||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}|||||||||||_|||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||~~~~}}}}}}}}||||||||||~~~~~~~~~~~~~~~~}}}}}}}||||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}||||||||||||||||||||||}}}|||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}|||||||||||||||||||}}}}}}}}}||||||||||_||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~~}}}}}}}}||||||||||~~~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}||||||||||||||||||||||}}}|||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||}}}}}}}}}|||||||||||_||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~~}}}}}}}}|||||||||||}}~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}~~~}}}}}}}}}}}}||||||||||||||||||||||}}}|||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}||||||||||||||||||}}}}}}}}}|||||||||||_|||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~~}}}}}}}}|||||||||||}}}~~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}||||||||||||||||||||||}}}|||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||||||||}}}}}}}}}||||||||||||_||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~~}}}}}}}}||||||||||}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}}}|||||||||||||||||||}}}}}|}}|||||||||}}}}}}||||||||||||||||||||||||||}}}}}}||||||||||||||||}}}}}}}}}|||||||||||||_||||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~~}}}}}}}}||||||||||}}}}}~~~~~~~~~~~~~}}}}}}}||||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}}}}||||||||||||||||||||}|}}}|||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||}}}}}}}}}}|||||||||||_|||||||||||||||||}}}}}}}}}}}}}}}}|||||||||||||||||||||||~~~~}}}}}}}}||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}}||||||||||||||||||||||}|}}}|||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||}}}}}}}}}}|||||||||||_|||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||~~~}}}}}}}}}||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}}}}|||||||||||||||||||||}||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}|||||||||||||||}}}}}}}}}}|||||||||||||_{{||||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||~~}}}}}}}}}||||||||||}}}}}}~~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||}}}}}}}}}}|||||||||||||{{{||||||||||||||}}}}}}}}}}}}}}}}||||||||||||||||||~}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~~|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}|||||||||||||||||}}}}}}}}}|||||||||||||||{{||||||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||}}}}}}}}}}||||||||||}}}}}}}~~~~~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}|||||||||||||||||}}}}}}}}|||||||||||||||||{{||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||}}}}}}}}}|||||||||||}}}}}}}~~~~~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}~~|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||}}}}}}}||||||||||||||||||||||{||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}|||||||||||||||||||||||||}}}}}}}}~~~~~~~~~~}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}~||||||||||||||||||||||||}|}}}|||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||}}}}}}}}}}}||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||}}}|}}|||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}|||||||||||||||}|||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||}}}}}}|||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}|||||||||||||||}||||||||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~~}}}}}}}}|||||||||||}}}}}}}}}~~~~}}}}}}}}||||||||||||||||||}}}}}}}}}}|}||||||||||||}}}}}}||||||||||||||||||||||||||~}}}}}}|||||||||||||||||||||}}}}}}}}}}}}|||||||||||||}}_||||||{||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||}}|}||||||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}}|_|||||||{{|||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}}}||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||}}|}||||||||||||||}}}}}}||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}||||_||||||{{||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||}}|}||||||||||||||}}}}}}||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}}||||||_||||||{{||||||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||}}|}||||||||||||||}}}}}}||||||||||||||||||||||||||~}}}}}}|||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}||||||||||_||||||{{||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||}}|}|||||||||||||}}}}}}||||||||||||||||||||||||||~}}}}}}|||||||||||||||||||||}}}}}}}}}}|}|||||||||||||}}|}|||||||||_||||||{|||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||}}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}|}||||||||||_||||||{|||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||~}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||}}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}|||||||||||||||}}}}||||||||||_||||||{{{{|||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||}}}}}}}}}}|||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||}}}}||||||||||_||||||{{{{{{|||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||}}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}|||||||||||||||||}}||||||||||||_||||||{{{{{|||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||}}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||}}|||||||||||_||||||{{|||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||}}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}}}|||||||||||||||||||}}}}}}}|||||||||||||||||}}|||||||||||_||||||{{|||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||}}}}}}}}}}||||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}}}}|||||||||||||||||||}}}}}}|||||||||||||||||}}||||||||||||_||||||{{||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}|||||||||}}}}}}||||||||||||||||||||||||||}}}}}}}}}}}|||||||||||||||||||||}}}|||||||||||||||||}}}}|||||||||_||||||{|||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||}}}}}}}}}}||||||||||}}}}}}||||||||||||||}|||||||||||}}}}}}}}}}}}}|||}||||||||||}||||}}}|||||||||||||||||}}||||||||||||_||||||{{|||||||}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||}}}}}}}}}}|||||||||}}}}}}||||||||||||||}|||||||||||}}}}}}}}}}}}}|||}||||||||||}||||}}}|||||||||||||||||}}||||||||||||_||||||{{||||||||}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||}}||||||||||}}}}}}}}}}}|||||||||||||||||||||}}}||||||||||||||||}}}||||||||||||_||||||{{||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||}}}}}}||||||||}}}}}}}}}}|||||||||||||||||||}}}}}}|||||||||||||||||}}||||||||||||||_||||||{{||||||||}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||}}}}}}}}}}}}||}}}}}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||}}|||||||||||||||_||||||{{||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||}}}}}}}}}}}}||}}}}}}}}||||||||||||||||||||}}}}}}}||||||||||||||||}}||||||||||||||||_||||||{{|||||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}||||}}}}}}|||||||||||}}}}}}}}}}}}||}}}}}}}}|||||||||||||||||||||}}}}}}}||||||||||||||||}}}|||||||||||||||||_|||||||{{|||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||~}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}|||}}}}}}}||||||||||||}}}}}}}}}}}|||}}}}}}}||||||||||||||||||||}}}}}}}}}}|||||||||||||}}}}|||||||||||||||||_||||||{{||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}|||}}}}}}}||||||||||||||}|||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}|}|||||||||||||}}|||||||||||||||||||||||||{|||||||}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||}}|||}}}}}}}||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}|}|||||||||||||}}|||||||||||||||||||||||||{|||||||}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||~~}}}}}}}~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}|||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||}}}}}}}}||}||||||||||||||||}}||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||}||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}||}}||||||||||||||||||||||||||||||||||||||||||||{||||||||||}}}}}}}}}||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||{{||||||||||||}}}}||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||_{{|||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||}|||||}}}}}}}|||||||||||||||||||||||||||||||||||||||{{{||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}||||||||||||||||}|||||}}}|||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||_{{|||||||||||}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}|||||}}}||||}}}}}|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||_||||||||||}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}||||}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||}|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||_|||||||||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}||||}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||_||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}||||_||||}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}||}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||}}|||||||_||||}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}||||}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||_||||||||}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}||||}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||_||||||||}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}||||}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||_|||||||||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}||||}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||_||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||}||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}||||_||||}}}}|}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||}}}}}||}}}}}}}}}}}}}|||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}|||}|||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||_|||||||||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}||||}}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}|||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||_|||||||||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}||||}}}}}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}||||||||||||||||}|||||}}||||||||}|||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||_|||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}||||||||||||||||||||||||||||||||||}|||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||_||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}|||||||||||||||||||||}}}|||||||||||}|||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||_||||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||}}}}}}}}||||||||||||||||||||}}}}|||||||||||}|||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||_||||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||}||}}}}||||||||}|||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||_|||||||||}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~~}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}}}}|||||||||||||||||||||}||||}}||||||||}|||}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||_||||||||}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}|||||}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||_|||||||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}}||}|}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||_{|||||||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}||||||||||||||||||||}}}}}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}||||_{{||||}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||}}}}}}}}}}||}|}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||_{{{|||||||}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||||||}}}||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||_{{{{|||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||_{{{{|||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}||||||||||||||||||||||||||||||||||||||~}}}}}}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||_{{{|||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}||||||||||||}}}||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}}~~~}}}}}}}}}|||||||||||||||||}||||||||||||||||||||~}}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||}}||||_{{||||}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}|||||||||||||}}}|}|||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}~||||||||||||||||||||||||||||||||||||||}}}}}}}||||||||||||||||||||}}}}}}}}}}||}|}}}}}}}}}}}}}}}}}}}}}}||||||||||||||||||||||||||||||||||||||_|||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}|||||||}}}}}}}||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}~~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~}}}}}}}~||||||||||||||||||||||||||||||||||||||}}}}}}|||||||||||||||||||||}}}}}}}}}|||}|}}}}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||_|||||||}}}}}}}|||||||||||||||||||||||||||||||||||||||||||||||||||}}}}|||||||}}}}}}}||||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}||||||||||||||||||||||||||||||||||||}}}}}}||||||||||||||||||||||}||||||}|||||}}}}}}}}}}}}}}}}}|||||||||||||||||||||||||||||||||||||||_|||||||||}}|}||||||||||||||||||||||||||||||||||||||||||||||||||||}}|}}}}}}|||||||||||||||||||}}}}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||||||||}}}}}|||||||||||||||||||||||||||||||||||}}}}}}}}}}||||||||||||||||||||||||||||||||||||||||||||||||}}|}||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~}}}}}}}}||||||||||}}}}}}}}~~~~~~}}}}}}}}|||||||||||||||||||||||||||||||||||||||}}}}||||||||||||||||||||}|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}||||||||||||||||||||||||||||||||||||}}}}}}}}}~~~~~~}}}}}}}}|||||